package com.sangeng.controller;

import com.sangeng.annotation.SystemLog;
import com.sangeng.domain.ResponseResult;
import com.sangeng.domain.entity.User;
import com.sangeng.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping("/userInfo")
    public ResponseResult userInfo(){
        return userService.userInfo();
    }

    /*
    * @PutMapping： 和PostMapping作用等同，都是用来向服务器提交信息。
    * 如果是添加信息，倾向于用@PostMapping，
    * 如果是更新信息，倾向于用@PutMapping。
    * */
    @PutMapping("/userInfo")
    @SystemLog(businessName="更新用户信息")
    public ResponseResult updateUserInfo(@RequestBody User user){
        return userService.updateUserInfo(user);
    }

    /*
     * 注册用户
     * */
    @PostMapping("/register")
    public ResponseResult register(@RequestBody User user){
        //对传过去的数据 进行 校验。
        return userService.register(user);
    }

}
